﻿using System;
using System.Collections.Generic;
using System.Text;
using System.Data;

namespace TonyNet4V1.SQLServer
{
	public class TableStructureComponent
	{
		private TableStructureDB clsData;

		public TableStructureComponent(System.Web.UI.Page page)
		{
			clsData = new TableStructureDB(page);
		}

		public List<Structs.TableStructure> GetTableStructure(string strTableName)
		{
			List<Structs.TableStructure> list = new List<Structs.TableStructure>();
			DataTable dt;

			dt = clsData.GetStructure(strTableName);
			if (dt != null)
			{
				foreach (DataRow dr in dt.Rows)
				{
					Structs.TableStructure clsEntity = new Structs.TableStructure();

					clsEntity.strName = dr[0].ToString();
					clsEntity.strType = dr[1].ToString();
					clsEntity.nLength = Convert.ToInt32(dr[2]);
					if (IsNeedCheckLength(clsEntity))
					{
						clsEntity.bCheckLength = true;
					}
					else
					{
						clsEntity.bCheckLength = false;
					}

					list.Add(clsEntity);
				}
			}
			return list;
		}

		#region 检查一个字段是否需要检查操作的长度
		/// <summary>
		/// 检查一个字段是否需要检查操作的长度
		/// </summary>
		/*******************************************************************
		 * * 功    能：	检查一个字段是否需要检查操作的长度
		 * * 参    数：
		 * * 返 回 值：
		 * * 作    者： Tony Mucor
		 * * 创建日期： 2013-9-9 18:11:57
		 * *******************************************************************/
		private Boolean IsNeedCheckLength(Structs.TableStructure clsEntity)
		{
			if (clsEntity.strType == "char")
			{
				return true;
			}
			else
			{
				return false;
			}
		}
		#endregion
	}
}
